1. Field
The present disclosure relates generally to a web services system and, in particular, to a dynamic application programming interface (API) within a web services system. Still more particularly, the present disclosure relates to a method and apparatus for facilitating communication between a client and a proxy server by building programs dynamically as needed or desired.
2. Background
Many organizations use different software systems for various purposes related to information discovery, business management, and other types of operations. Software systems often exchange data with each other. A web services architecture enables these software systems to exchange this data over one or more computer networks. A software system that requests data may be referred to as a service requester. The software system that processes the request and provides the data may be referred to as a service provider.
The exchange of data between service requestors and service providers may occur over one or more computer networks, which may include the Internet, some other type of public network, a private network, or some combination thereof. Managing multiple service requestors and multiple service providers over time may be more difficult and time-consuming than desired. This type of management may be especially time-consuming and difficult when the service providers belong to a private network and one or more of the service requestors belong to a public network.
For example, in some cases, only certain service requestors may be authorized to access or exchange data with a particular service provider that belongs to a private network. The policy governing which service requestors are and which service requestors are not authorized to access a particular service provider may be managed by an application programming interface (API) associated with the particular service provider.
When a service requestor tries to access multiple service providers, determining whether the service requestor is authorized to access each of those multiple service providers may be more difficult and time-consuming than desired. For example, some currently available methods of authorization may require manual configuration for each service requestor that is trying to access a service provider.
Time delays in providing authorizations to service requestors may lead to time delays of tasks that users of the service requestors want to perform. When the users are employers, employees, organization members, corporate personnel, or members of other types of business entities, these time delays may affect overall performance and operational efficiency of the users and business entities. Therefore, it would be desirable to have a method and apparatus that take into account at least some of the issues discussed above, as well as other possible issues.